Private Declare Function GetVersionExA Lib "kernel32" _
               (lpVersionInformation As OSVERSIONINFO) As Integer
            Public Type OSVERSIONINFO
               dwOSVersionInfoSize As Long
               dwMajorVersion As Long
               dwMinorVersion As Long
               dwBuildNumber As Long
               dwPlatformId As Long
               szCSDVersion As String * 128
            End Type
Private Function LPSTRToVBString$(ByVal s$)
   Dim nullpos&
   nullpos& = InStr(s$, Chr$(0))
   If nullpos > 0 Then
      LPSTRToVBString = Left$(s$, nullpos - 1)
   Else
      LPSTRToVBString = ""
   End If
End Function
Public Function GetVersion1() As String
Dim osinfo As OSVERSIONINFO
Dim retvalue As Integer
osinfo.dwOSVersionInfoSize = 148
osinfo.szCSDVersion = Space$(128)
retvalue = GetVersionExA(osinfo)
With osinfo
Select Case .dwPlatformId
Case 1
Select Case .dwMinorVersion
Case 0
getVersion1 = "Windows 95"
Case 10
getVersion1 = "Windows 98"
Case 90
getVersion1 = "Windows Millenium"
End Select
Case 2
Select Case .dwMajorVersion
Case 3
getVersion1 = "Windows NT 3.51"
Case 4
getVersion1 = "Windows NT 4.0"
Case 5
If .dwMinorVersion = 0 Then
getVersion1 = "Windows 2000"
Else
getVersion1 = "Windows XP"
End If
Case 6
getVersion1 = "Windows Vista"
End Select
Case Else
getVersion1 = "Unknown"
End Select
End With
End Function